const knex = require('../db/knex');

class ItemModel {
  
  static async getAllItems() {
    return await knex.select('*').from('items');
  }

  static async getItemById(id) {
    // 打印 id，确保传递给查询的参数是正确的
    console.log('Searching for item with id:', id);
  
    if (id === undefined) {
      throw new Error('Item ID is undefined');
    }
  
    return await knex.select('*').from('items').where({ item_id: id }).first();
  }

  static async getItemByUserId(userId) {
    return await knex.select('*').from('items').where({ user_id: userId });
  }

  static async addItem(item) {
    return await knex('items').insert(item).returning('*');
  }

  static async updateItem(id, item) {
    return await knex('items').where({ item_id: id }).update(item).returning('*');
  }

  static async deleteItem(id) {
    return await knex('items').where({ item_id: id }).del().returning('*');
  }
}

module.exports = ItemModel;